java  BASE 64 엔 코더 상세 소개 및 간단 한 인 스 턴 스

2199 단어 자바BASE64Encoder
java  BASE 64 엔 코더 상세 설명
Base 64 는 인터넷 에서 가장 흔히 볼 수 있 는 8Bit 바이트 코드 를 전송 하 는 인 코딩 방식 중 하나 로 이메일 을 보 낼 때 서버 인증 사용자 이름과 비밀 번 호 는 Base 64 로 인 코딩 하고 첨부 파일 도 Base 64 로 인 코딩 해 야 한다.
Base 64 는 8 비트 바이트 3 개 당 4 개의 6 비트 바이트(3*8=4*6=24)로 바 꾼 뒤 6 비트 를 두 개의 상위 0 을 더 해 8 비트 바이트 4 개 를 구성 하 라 고 요구 했다.즉,전 환 된 문자열 은 이론 적 으로 기 존 보다 1/3 길 어 질 것 이다.
원문의 바이트 가 마지막 에 3 개 부족 한 곳 은 0 으로 보충 하고 변환 할 때 Base 64 인 코딩 은=번호 로 대체 합 니 다.이것 이 바로 일부 Base 64 인 코딩 이 하나 또는 두 개의 등호 로 끝 나 는 이유 이지 만 등호 가 최대 두 개 밖 에 없 는 이유 이다.
Java 코드 구현:
BASE 64 Encoder 와 BASE 64 Decoder 두 가지 방법 은 모두 sun 회사 의 내부 방법 으로 자바 api 에 공 개 된 적 이 없 기 때문에 이런 방법 을 사용 하 는 것 은 안전 하지 않 습 니 다.앞으로 언제든지 제거 할 수 있 기 때문에 해당 하 는 대체 대상 과 방법 을 사용 해 야 합 니 다.
Eclipse 에서 BASE 64 Encoder 가 없 는 해결 방법:Eclipse 가 져 오기%JAVA 를 다음 과 같이 설정 합 니 다.HOME%\jre\lib 디 렉 터 리 에 있 는 rt.jar 패 키 지 를 선택 하면 됩 니 다.Project->Properties,Java Build Path 설정 항목 을 선택 하고 Libraries 탭 을 선택 하 십시오.External Jars 추가%JAVAHOME%\jre\lib\rt.jar 를 사용 할 수 있 습 니 다!
Base64.java

<span style="font-family:Times New Roman;font-size:14px;">package cn.hncu.encoder; 
import java.io.IOException; 
import sun.misc.BASE64Decoder; 
import sun.misc.BASE64Encoder; 
 
public class Base64 { 
  public static void main(String[] args) { 
    try { 
    String name="   "; 
    String pwd="     。"; 
    BASE64Encoder en=new BASE64Encoder(); 
    name=en.encode(name.getBytes("utf-8"));//5oiR54ix5L2g 
    pwd=en.encode(pwd.getBytes("utf-8"));//5L2g5Y205LiN55+l6YGT44CC 
    System.out.println(name+","+pwd); 
     
    BASE64Decoder den=new BASE64Decoder(); 
    name=new String(den.decodeBuffer(name),"utf-8"); 
    pwd=new String(den.decodeBuffer(pwd),"utf-8"); 
    System.out.println(name+","+pwd); 
    } catch (IOException e) { 
      e.printStackTrace(); 
    } 
  } 
} 
</span> 


읽 어 주 셔 서 감사합니다. 여러분 에 게 도움 이 되 기 를 바 랍 니 다.본 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!

좋은 웹페이지 즐겨찾기